package com.qk.mapper;

import com.qk.entity.Activity;
import org.apache.ibatis.annotations.Delete;
import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;
@Mapper
public interface ActivityMapper {

    List<Activity> list(Integer channel, Integer type, Integer status);

    @Delete("delete from activity where id = #{id}")
    void deleteById(Integer id);

    @Insert("insert into activity (channel, name, start_time, end_time, description, type, discount, voucher, create_time, update_time) " +
            "values(#{channel},#{name},#{startTime},#{endTime},#{description},#{type},#{discount},#{voucher},#{createTime},#{updateTime}) ")
    void add(Activity activity);

    @Select("select * from activity where id = #{id}")
    Activity selectById(Integer id);

    @Insert("update activity set channel = #{channel}, name = #{name}, start_time = #{startTime}," +
            " end_time = #{endTime}, description = #{description}, type = #{type}, discount = #{discount}, voucher = #{voucher}, update_time = #{updateTime} where id = #{id}")
    void update(Activity activity);

    @Select("select * from activity where type = #{type}")
    List<Activity> listByType(Integer type);
}
